//
//  HomeTableViewController.swift
//  weibo 666
//
//  Created by mac on 15/11/3.
//  Copyright © 2015年 mac. All rights reserved.
//

import UIKit
import SVProgressHUD
///可重用cell标示符
private let cellId = "cellId"

///首页
class HomeTableViewController: VistorTableViewController {
    
    ///微博列表视图模型
    private var listViewModel = StatusListViewModel()
    override func viewDidLoad() {
        super.viewDidLoad()
        if !UserAccountViewModel.sharedUserAccount.userLogin{
        vistorView?.setUpInfo(nil, title: "关注一些人，回这里看看有什么惊喜")
            return
        }
        prepareTableView()
        loadData()
    }
    ///准备表格
    private func prepareTableView(){
        // 注册可重用 cell
        tableView.registerClass(StatusCell.self, forCellReuseIdentifier: cellId)
        
        // 自动计算行高 - 需要一个自上而下的自动布局的控件，指定一个向下的约束
        tableView.estimatedRowHeight = 200
        tableView.rowHeight = UITableViewAutomaticDimension
    }

    ///加载数据
    private func loadData(){
        listViewModel.loadStatus { (isSuccessed) -> () in
            if !isSuccessed {
                SVProgressHUD.showInfoWithStatus("您的网络不给力")
                return
            }
            
            // 刷新数据
            self.tableView.reloadData()
        }
    }
}
//MARK: - 数据源方法
extension HomeTableViewController{
    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return self.listViewModel.statuslist.count
    }
    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier(cellId, forIndexPath: indexPath) as! StatusCell
        
        cell.viewModel = listViewModel.statuslist[indexPath.row]
        
        return cell
    }
}
